function A306()
format long;

% 加载数据
data1 = load('data1-237.mat');  % 加载到结构体中
data2 = load('data1-238.mat');  % 加载到结构体中

signal1 = data1.data(:, 150); % 从 data4-350 中提取
signal2 = data2.data(:, 150); % 从 data1-349 中提取

% 采样频率（Hz）
fs = 400;  % 假设采样频率为400 Hz（根据实际情况调整）

% 时间向量
t1 = (0:length(signal1)-1) / fs; % 时间向量
t2 = (0:length(signal2)-1) / fs;

% 创建合并图
figure;

% 时域信号对比
subplot(3, 2, 1);
plot(t1, signal1, 'b', 'DisplayName', '信号 1 (双排)');
hold on;
plot(t2, signal2, 'r', 'DisplayName', '信号 2 (单排)');
xlabel('时间 (秒)');
ylabel('幅值');
title('时域信号对比');
legend('show');
grid on;

% 单边幅频谱对比
N1 = length(signal1);
fft_signal1 = fft(signal1);
P2_1 = abs(fft_signal1 / N1);
P1_1 = P2_1(1:N1/2+1);
P1_1(2:end-1) = 2 * P1_1(2:end-1);

N2 = length(signal2);
fft_signal2 = fft(signal2);
P2_2 = abs(fft_signal2 / N2);
P1_2 = P2_2(1:N2/2+1);
P1_2(2:end-1) = 2 * P1_2(2:end-1);

frequencies1 = fs * (0:(N1/2)) / N1;
frequencies2 = fs * (0:(N2/2)) / N2;

subplot(3, 2, 2);
plot(frequencies1, P1_1, 'b', 'DisplayName', '信号 1 (双排)');
hold on;
plot(frequencies2, P1_2, 'r', 'DisplayName', '信号 2 (单排)');
xlabel('频率 (Hz)');
ylabel('幅度');
title('单边频谱对比');
legend('show');
grid on;

% 双边频谱对比
fft_signal_shifted1 = fftshift(fft_signal1);
frequencies_double1 = fs * (-N1/2:N1/2-1) / N1;
fft_signal_shifted2 = fftshift(fft_signal2);
frequencies_double2 = fs * (-N2/2:N2/2-1) / N2;

subplot(3, 2, 3);
plot(frequencies_double1, abs(fft_signal_shifted1), 'b', 'DisplayName', '信号 1 (双排)');
hold on;
plot(frequencies_double2, abs(fft_signal_shifted2), 'r', 'DisplayName', '信号 2 (单排)');
xlabel('频率 (Hz)');
ylabel('幅度');
title('双边频谱对比');
legend('show');
grid on;

% 功率谱密度对比
PSD1 = (abs(fft_signal1) / N1).^2;
PSD1_single = PSD1(1:N1/2+1);
PSD1_single(2:end-1) = 2 * PSD1_single(2:end-1);

PSD2 = (abs(fft_signal2) / N2).^2;
PSD2_single = PSD2(1:N2/2+1);
PSD2_single(2:end-1) = 2 * PSD2_single(2:end-1);

subplot(3, 2, 4);
plot(frequencies1, PSD1_single, 'b', 'DisplayName', '信号 1 (双排)');
hold on;
plot(frequencies2, PSD2_single, 'r', 'DisplayName', '信号 2 (单排)');
xlabel('频率 (Hz)');
ylabel('功率/频率');
title('功率谱密度对比');
legend('show');
grid on;

% 对数幅值谱对比
amplitude_dB1 = 20 * log10(P1_1);
amplitude_dB2 = 20 * log10(P1_2);

subplot(3, 2, 5);
plot(frequencies1, amplitude_dB1, 'b', 'DisplayName', '信号 1 (双排)');
hold on;
plot(frequencies2, amplitude_dB2, 'r', 'DisplayName', '信号 2 (单排)');
xlabel('频率 (Hz)');
ylabel('幅度 (dB)');
title('对数幅值谱对比');
legend('show');
grid on;

% 重构信号对比
reconstructed_signal1 = ifft(fft_signal1);
reconstructed_signal2 = ifft(fft_signal2);

subplot(3, 2, 6);
plot(t1, real(reconstructed_signal1), 'b', 'DisplayName', '重构信号 1 (双排)');
hold on;
plot(t2, real(reconstructed_signal2), 'r', 'DisplayName', '重构信号 2 (单排)');
xlabel('时间 (秒)');
ylabel('幅值');
title('重构信号对比');
legend('show');
grid on;
